Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Dobrich Challenger Portugal F5 Portugal F1 Portugal F2 Portugal F4 Portugal F5 Portugal F3 Spain F20 Spain F21 Spain F25 Portugal F4 Portugal F5 Brazil F31 Spain F1 Spain F2 Portugal F2 Portugal F3 Spain F5 Portugal F4 Spain F6 Spain F9 Egypt F2 Egypt F4 Spain F12 Spain F15 Spain F16 Spain F18 Spain F20 Spain F21 Spain F22 Spain F23 Spain F24 Spain F26 Spain F27 Spain F29 Spain F30 Egypt F27 Brazil F32 Spain F33 Egypt F28 Portugal F9 Egypt F29 Portugal F10 Egypt F30 Portugal F11 Egypt F32 Egypt F33 Spain F41 Spain F42 Turkey F49 Turkey F50 Portugal F1 Spain F1 Spain F2 Portugal F3 Spain F3 Spain F4 Spain F5 Peru F1 Turkey F8 Turkey F9 Spain F6 Spain F7 Spain F8 Portugal F4 Portugal F5 Russia F3 Portugal F6 Belgium F2 Belgium F3 Austria F1 Belgium F4 Austria F2 Belgium F5 Spain F18 Romania F2 Spain F23 Romania F13 Spain F25 Spain F28 Kazakhstan F12 Portugal F8 Portugal F9 Kazakhstan F14 Portugal F10 Portugal F11 Estonia F5 Turkey F42 Turkey F43 Tunisia F3 Spain F2 Tunisia F4 Spain F4 Spain F5 Portugal F3 India F3 India F4 Morocco F2 Morocco F3 Spain F9 Italy F6 Kazakhstan F4 Portugal F4 Russia F1 Portugal F7 Mozambique F1 Mozambique F2 Russia F4 Spain F18 Spain F20 Spain F21 Spain F22 Russia F5 Russia F6 Belgium F13 Spain F28 Kazakhstan F5 Kazakhstan F6 Egypt F36 Egypt F37 Egypt F38 Egypt F39 Turkey F46 Turkey F5 Turkey F6 Turkey F7 Portugal F3 Egypt F9 Spain F17 Egypt F10 Turkey F7 Czech Republic F4 Spain F20 Spain F21 Lithuania F1 Georgia F1 Russia F5 Russia F6 Romania F15 Spain F29 Spain F30 Spain F31 Kazakhstan F7 Spain F35 Morocco F8 Morocco F9 Turkey F47 Turkey F48 Tunisia F3 (Hammamet) Tunisia F4 (Hammamet) Egypt F4 (Sharm El Sheikh) Tunisia F5 (Hammamet) Egypt F5 (Sharm El Sheikh) Spain F5 (Murcia) Tunisia F8 (Hammamet) Tunisia F9 (Hammamet) Spain F7 (Javea) Spain F8 (Reus) Spain F10 (Madrid) Kazakhstan F3 (Shymkent) Portugal F6 (Porto) Kazakhstan F4 (Shymkent) Portugal F7 (Carcavelos) Kazakhstan F5 (Shymkent) Spain F12 (Lleida) Ukraine F1 (Cherkassy) Ukraine F2 (Cherkassy) Romania F2 (Bacau) Turkey F21 (Antalya) Tunisia F22 (Hammamet) Turkey F22 (Istanbul) Spain F20 (Getxo) Portugal F10 (Torres Vedras) Spain F21 (Gandia) Portugal F11 (Povoa de Varzim) Spain F22 (Denia) Portugal F12 (Idanha-A-Nova) Portugal F13 (Idanha-A-Nova) Russia F6 (Moscow) Tunisia F27 (Hammamet) Tunisia F28 (Hammamet) Tunisia F29 (Hammamet) Tunisia F30 (Hammamet) Italy F35 (Santa Margherita Di Pula) Morocco F5 (Beni Mellal) Morocco F6 (Agadir) Turkey F45 (Antalya) Turkey F46 (Antalya) Spain F2 (Manacor (Mallorca)) Spain F3 (Paguera (Mallorca)) Spain F4 (Paguera (Mallorca)) Spain F5 (Murcia) Portugal F1 (Vale Do Lobo) Portugal F3 (Loule) Spain F19 Spain F6 (Xabia) Portugal F5 (Vilamoura) Portugal F6 (Lisbon) Portugal F7 (Porto) Kazakhstan F3 (Shymkent) Portugal F8 (Cascais) Kazakhstan F4 (Shymkent) Tunisia F23 (Hammamet) Spain F17 (Bakio) Italy F18 (Casinalbo) Portugal F14 (Sintra) Germany F12 (Karlsruhe) Portugal F15 (Sintra) Spain F24 (Santander) Portugal F5 Italy F30 (Santa Margherita Di Pula) Spain F13 Tunisia F39 (Monastir) Tunisia F40 (Monastir) Tunisia F41 (Monastir) M15 Manacor M15 Manacor M25 Kazan Spain F20 M15 Madrid M25 Vic Spain F21 M25 Santander M25 Donostia-San-Sebastian M25 Tavira Kazakhstan F13 M15 Monastir M15 Monastir M15 Kazan M25 Murcia M15 Novomoskovsk M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Valldoreix M15 Benicarlo M15 Torello M15 Cairo M15 Cairo M15 Cairo M15 St. Petersburg M15 St. Petersburg M15 Kazan M15 Shymkent M15 Shymkent M15 Majadahonda M15 Valldoreix M15 Shymkent M15 Shymkent M25 Denia M25 Koksijde M25 Santander M25 Oviedo M15 Platja D'Aro M15 Girona M15 Benicarlo M15 Monastir M25 Nur-Sultan M25 Nur-Sultan M25 Antalya Spain F26 Portugal F6 Peru F2 Spain F14 Portugal F2 Portugal F7 Spain F17 M25 Castelo Branco Kazakhstan F3 M25 Pardubice M15 Villena M25 Vale do Lobo M15 Monastir M25 Sabadell Egypt F3 M25 Mataro M25 Bolzano M25 Elvas M25 Idanha-a-Nova M15 Antalya M25 Monastir M15 Antalya M25 Esch/Alzette M25 Loule M15 Shymkent M15 Shymkent M25 The Hague M25 Sabadell Russia F4 M25 Santa Margherita di Pula M25 Vila Real de Santo Antonio M25 Getxo M25 Roda de Bara M25 Satu Mare M25 Vale do Lobo M25 Angers M25 Maribor M25 Mungia-Laukariz Spain F3 M25 Porto M25 Belgrade M25 Santa margherita di Pula Turkey F10 M25 Sintra Guimaraes Challenger Segovia Challenger Sao Paulo Challenger Segovia Challenger Ortisei Challenger Karshi Challenger Samarkand Challenger Todi Challenger Porto Alegre Challenger Bangkok Challenger M25 Vila Real de Santo Antonio Barletta Challenger M25 Girona Rome Challenger Manerbio Challenger M15 Benicarlo Shymkent Challenger Milan Challenger M25 Faro M25 Sintra Seville Challenger Almaty Challenger Tashkent Challenger Santos Challenger Prague Challenger Mersin Challenger Egypt F6 (Sharm El Sheikh) Netherlands F5 Zhangjiagang Challenger Kaohsiung Challenger Chennai Challenger Manerbio Challenger Shymkent Challenger Jerusalem Challenger Bratislava Challenger Milan Challenger Sopot Challenger Manerbio Challenger Bucharest Challenger Helsinki Challenger Forli 3 Challenger Nur-Sultan 1 Challenger Troisdorf Challenger Karshi Challenger Malaga Challenger Salzburg Challenger Bratislava Challenger Matsuyama Challenger Kobe Challenger Valencia Challenger Maia Challenger Ottignies-Louvain-la-Neuve Challenger Portugal F5 (Quinta Da Marinha) Grodzisk Mazowiecki Challenger M25 Setubal Marbella Challenger Brest Challenger Oeiras 1 Challenger Casablanca Challenger Alicante Challenger Murcia Challenger M25 Reus Matsuyama Challenger M25 Vale do Lobo Lisbon Challenger Almaty Challenger Segovia Challenger Fergana Challenger Seville Challenger Kazakhstan F5 (Shymkent) Bratislava Challenger M25 Zaragoza Istanbul Challenger Pune Challenger Astana Challenger M25 Valldoreix Prague Challenger Sao Paulo Challenger Lisbon Challenger Manila Challenger Tashkent Challenger Napoli Challenger Murcia Challenger Braga Challenger M25 Setubal Samarkand Challenger Baotou Challenger Perugia Challenger Poznan Challenger Tampere Challenger Girona Challenger Nur-Sultan 2 Challenger Almaty 2 Challenger Piracicaba Challenger San Marino Challenger M25 Idanha-a-Nova Bangkok Challenger Cassis Challenger Iasi Challenger Oeiras 3 Challenger Oeiras 2 Challenger Egypt F1 (Sharm El Sheikh) Cordenons Challenger M25 Sabadell Porto 2 Challenger M25 Les Franqueses del Valles Ostrava Challenger Samarkand Challenger Mestre Challenger Shymkent Challenger Hamburg Challenger Tampere Challenger Genova Challenger Shanghai Challenger Bangalore Challenger Bangkok Challenger Bangkok Challenger Yokohama Challenger Shenzhen Challenger Sophia Antipolis Challenger Ostrava Challenger Lisbon Challenger Kigali 2 Challenger Samarkand Challenger Almaty Challenger Milan Challenger L'Aquila Challenger Jinan Challenger Szczecin Challenger Kaohsiung Challenger Sao Paulo Challenger Maia Challenger Prague Challenger Biella 7 Challenger Bratislava Challenger Tulln Challenger Segovia Challenger Dobrich 2 Challenger Mallorca Challenger Kyiv Challenger Braga Challenger Brest Challenger Tenerife Challenger Maia 1 Challenger Maia 2 Challenger Traralgon Challenger Bengalaru 1 Challenger Murcia Challenger Braga Challenger Valencia Challenger Shymkent 1 Challenger Tunis Challenger Shymkent 2 Challenger Poznan Challenger Lyon Challenger Oeiras 3 Challenger Porto Challenger San Benedetto Challenger Yokkaichi Challenger Banja Luka Challenger Toulouse Challenger Tulln Challenger Szczecin Challenger Sibiu Challenger Alicante Challenger St. Tropez Challenger Yokohama Challenger Montemar Challenger Tenerife 2 Challenger Pune Challenger Maia Challenger Szekesfehervar Challenger Murcia Challenger Ostrava Challenger Aix En Provence Challenger Lyon Challenger Francavilla Challenger Porto Challenger Mallorca Challenger Tulln Challenger Sibiu Challenger Brest Challenger Valencia Challenger Nonthaburi 1 Challenger Kobe Challenger Punta Del Este Challenger Murcia Challenger Girona Challenger Koblenz Challenger Kigali 2 Challenger Turin Challenger Oeiras 4 Challenger Girona Challenger Tunis Challenger Milan Challenger Royan Challenger Brasov Challenger Iasi Challenger Tampere Challenger Bunschoten Challenger Porto 2 Challenger Shenzhen Challenger Porto Challenger Nur-Sultan Challenger Ningboo Challenger Liuzhou Challenger Bengalaru Challenger Sofia 2 Challenger Seville Challenger Nur-Sultan Challenger Montevideo Challenger Ostrava Challenger Split Challenger Oeiras 3 Challenger Porto Challenger M25 Zaragoza Santiago Challenger Mouilleron-Le-Captif Challenger Alicante Challenger Turin Challenger Antalya 3 Challenger Estoril Open - Estoril Troisdorf Challenger Karlsruhe Challenger Zug Challenger Braga Challenger Oeiras 3 Challenger Kolkata Challenger Bratislava 1 Challenger Poznan Challenger Lille Challenger New Delhi Challenger Sao Leopoldo Challenger Portugal Open - Oeiras Millennium Estoril Open - Estoril M15 Platja D'Aro Las Franquesas del Valles Challenger Millennium Estoril Open - Estoril Fergana Challenger St. Brieuc Challenger Abierto Mexicano Telcel - Acapulco Murray River Open - Melbourne Millennium Estoril Open - Estoril Estoril Open - Estoril Mestre Challenger Augsburg Challenger Millennium Estoril Open - Estoril M25 Zaragoza Gonet Geneva Open - Geneva Gonet Geneva Open - Geneva Shenzhen Challenger Eskisehir Challenger Moscow Challenger Estoril Challenger M25 Gaziantep Bangkok Challenger Lisbon Challenger Almaty Challenger Caltanissetta Challenger Bastad Challenger Szczecin Challenger Cordenons Challenger Portugal Open - Oeiras Zhangjiagang Challenger M15 Melilla Open 13 Provence - Marseille Biella Challenger Kremlin Cup - Moscow Grand Prix Hassan II - Casablanca Manama Challenger Como Challenger Andria Challenger Millennium Estoril Open - Estoril Braga Challenger Astana Challenger Itajai Challenger Todi Challenger Lisbon Challenger Banja Luka Challenger Biella Challenger Millennium Estoril Open - Estoril Tampere Challenger Lille Challenger Campinas Challenger Alicante Challenger Alicante Challenger Amersfoort Challenger Tampere Challenger Meerbusch Challenger Lisbon Challenger Brasil Open - Sao Paulo Geneva Open - Geneva Helsinki Challenger Chennai Challenger Bergamo Challenger Prague II Challenger Prostejov Challenger Parma Challenger Prostejov Challenger Braunschweig Challenger Blois Challenger Split Challenger Rome Challenger Open Sud de France - Montpellier Tata Open Maharashtra - Pune Sofia Open - Sofia Amersfoort Challenger Tampere Challenger Meerbusch Challenger Seville Challenger Braga Challenger Bengaluru Challenger Oeiras 4 Challenger Vicenza Challenger Orleans Challenger Lyon Challenger Generali Open - Kitzbuhel Poznan Challenger Szczecin Challenger Malaga Challenger Hamburg Challenger BMW Open - Munich Valencia Challenger Cordoba Open - Cordoba Millennium Estoril Open - Estoril Maspalomas Challenger Suzhou Challenger Seoul Challenger Lima 3 Challenger Kigali 1 Challenger Barcelona Challenger Ostrava Challenger Heilbronn Challenger Porto Challenger Liberec Challenger Valencia Open - Valencia Como Challenger St. Petersburg Open - St. Petersburg European Open - Antwerp Tampere Challenger Open 13 Provence - Marseille M25 Santa Margherita di Pula Quimper Challenger Cherbourg Challenger Rovereto Challenger Antalya Challenger Madrid Challenger Francavilla Challenger Lisbon Challenger Istanbul Challenger St. Petersburg 1 Challenger Zagreb Challenger Almaty 1 Challenger Estoril Open - Estoril Matsuyama Challenger Oeiras 3 Challenger Tulln Challenger Pau Challenger EFG Swiss Open - Gstaad Monte-Carlo Rolex Masters - Monte-Carlo Generali Open - Kitzbuhel Miami Open - Miami Kremlin Cup - Moscow French Open (juniors) Wimbledon - London French Open - Paris French Open - Paris Australian Open - Melbourne Australian Open Qualifying - Doha U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne Wimbledon - London Wimbledon - London Australian Open - Melbourne Australian Open - Melbourne U.S. Open - New York Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Lisbon Challenger Sibiu Challenger Davis Cup, Group II, 2R, POR-FIN 4-1 Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) Wimbledon (juniors) U.S. Open (juniors) French Open (juniors) Davis Cup, World Group I, PO, LTU-POR 0-4 All Lower level tournaments Wimbledon (juniors) Madrid Challenger U.S. Open (juniors) Hamburg European Open - Hamburg Braga Challenger M25 Bakio